import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule } from '@angular/forms';
import { AppCommonModule } from '@app/shared/common/app-common.module';
// import { Base_BatchesComponent } from './productModel/base_Batches/base_Batches.component';
// import { CreateOrEditBase_BatchModalComponent } from './productModel/base_Batches/create-or-edit-base_Batch-modal.component';
// import { Base_PhaseLookupTableModalComponent } from './productModel/base_Batches/base_Phase-lookup-table-modal.component';

// import { Base_PhasesComponent } from './productModel/base_Phases/base_Phases.component';
// import { CreateOrEditBase_PhaseModalComponent } from './productModel/base_Phases/create-or-edit-base_Phase-modal.component';
// import { Base_ModelLookupTableModalComponent } from './productModel/base_Phases/base_Model-lookup-table-modal.component';

// import { Base_ModelsComponent } from './productModel/base_Models/base_Models.component';
// import { CreateOrEditBase_ModelModalComponent } from './productModel/base_Models/create-or-edit-base_Model-modal.component';
import { AutoCompleteModule } from 'primeng/primeng';
import { PaginatorModule } from 'primeng/primeng';
import { EditorModule } from 'primeng/primeng';
import { InputMaskModule } from 'primeng/primeng';
import { FileUploadModule } from 'primeng/primeng';
import { TableModule } from 'primeng/table';

import { UtilsModule } from '@shared/utils/utils.module';
import { CountoModule } from 'angular2-counto';
import { ModalModule, TabsModule, TooltipModule, BsDropdownModule } from 'ngx-bootstrap';
// import { DashboardComponent } from './dashboard/dashboard.component';
import { MainRoutingModule } from './main-routing.module';
import { NgxChartsModule } from '@swimlane/ngx-charts';

import {
    BsDatepickerModule,
    BsDatepickerConfig,
    BsDaterangepickerConfig,
    BsLocaleService
} from 'ngx-bootstrap/datepicker';
import { NgxBootstrapDatePickerConfigService } from 'assets/ngx-bootstrap/ngx-bootstrap-datepicker-config.service';
// import { DashboardLearderComponent } from './dashboard/dashboard-leader.component';

NgxBootstrapDatePickerConfigService.registerNgxBootstrapDatePickerLocales();

@NgModule({
    imports: [
        FileUploadModule,
        AutoCompleteModule,
        PaginatorModule,
        EditorModule,
        InputMaskModule,
        TableModule,

        CommonModule,
        FormsModule,
        ModalModule.forRoot(),
        TabsModule,
        TooltipModule,
        AppCommonModule,
        UtilsModule,
        MainRoutingModule,
        CountoModule,
        NgxChartsModule,
        BsDatepickerModule.forRoot(),
        BsDropdownModule.forRoot()
    ],
    declarations: [
        // Base_BatchesComponent,
        // CreateOrEditBase_BatchModalComponent,
        // Base_PhaseLookupTableModalComponent,
        // Base_PhasesComponent,
        // CreateOrEditBase_PhaseModalComponent,
        // Base_ModelLookupTableModalComponent,
        // Base_ModelsComponent,
        // CreateOrEditBase_ModelModalComponent,
        // DashboardComponent,
        // DashboardLearderComponent
    ],
    providers: [
        { provide: BsDatepickerConfig, useFactory: NgxBootstrapDatePickerConfigService.getDatepickerConfig },
        { provide: BsDaterangepickerConfig, useFactory: NgxBootstrapDatePickerConfigService.getDaterangepickerConfig },
        { provide: BsLocaleService, useFactory: NgxBootstrapDatePickerConfigService.getDatepickerLocale }
    ]
})
export class MainModule {}
